"use strict";
((typeof self !== 'undefined' ? self : this)["webpackChunkvue_amis_sdk"] = (typeof self !== 'undefined' ? self : this)["webpackChunkvue_amis_sdk"] || []).push([[3273],{

/***/ 23273:
/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {

__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "conf": function() { return /* binding */ conf; },
/* harmony export */   "language": function() { return /* binding */ language; }
/* harmony export */ });
// Copyright (c) Microsoft Corporation.
// Licensed under the MIT License.
var bounded = function (text) { return "\\b" + text + "\\b"; };
var identifierStart = '[_a-zA-Z]';
var identifierContinue = '[_a-zA-Z0-9]';
var identifier = bounded("" + identifierStart + identifierContinue + "*");
var keywords = [
    'targetScope',
    'resource',
    'module',
    'param',
    'var',
    'output',
    'for',
    'in',
    'if',
    'existing'
];
var namedLiterals = ['true', 'false', 'null'];
var nonCommentWs = "[ \\t\\r\\n]";
var numericLiteral = "[0-9]+";
var conf = {
    comments: {
        lineComment: '//',
        blockComment: ['/*', '*/']
    },
    brackets: [
        ['{', '}'],
        ['[', ']'],
        ['(', ')']
    ],
    surroundingPairs: [
        { open: '{', close: '}' },
        { open: '[', close: ']' },
        { open: '(', close: ')' },
        { open: "'", close: "'" },
        { open: "'''", close: "'''" }
    ],
    autoClosingPairs: [
        { open: '{', close: '}' },
        { open: '[', close: ']' },
        { open: '(', close: ')' },
        { open: "'", close: "'", notIn: ['string', 'comment'] },
        { open: "'''", close: "'''", notIn: ['string', 'comment'] }
    ],
    autoCloseBefore: ":.,=}])' \n\t",
    indentationRules: {
        increaseIndentPattern: new RegExp('^((?!\\/\\/).)*(\\{[^}"\'`]*|\\([^)"\'`]*|\\[[^\\]"\'`]*)$'),
        decreaseIndentPattern: new RegExp('^((?!.*?\\/\\*).*\\*/)?\\s*[\\}\\]].*$')
    }
};
var language = {
    defaultToken: '',
    tokenPostfix: '.bicep',
    brackets: [
        { open: '{', close: '}', token: 'delimiter.curly' },
        { open: '[', close: ']', token: 'delimiter.square' },
        { open: '(', close: ')', token: 'delimiter.parenthesis' }
    ],
    symbols: /[=><!~?:&|+\-*/^%]+/,
    keywords: keywords,
    namedLiterals: namedLiterals,
    escapes: "\\\\(u{[0-9A-Fa-f]+}|n|r|t|\\\\|'|\\${)",
    tokenizer: {
        root: [{ include: '@expression' }, { include: '@whitespace' }],
        stringVerbatim: [
            { regex: "(|'|'')[^']", action: { token: 'string' } },
            { regex: "'''", action: { token: 'string.quote', next: '@pop' } }
        ],
        stringLiteral: [
            { regex: "\\${", action: { token: 'delimiter.bracket', next: '@bracketCounting' } },
            { regex: "[^\\\\'$]+", action: { token: 'string' } },
            { regex: '@escapes', action: { token: 'string.escape' } },
            { regex: "\\\\.", action: { token: 'string.escape.invalid' } },
            { regex: "'", action: { token: 'string', next: '@pop' } }
        ],
        bracketCounting: [
            { regex: "{", action: { token: 'delimiter.bracket', next: '@bracketCounting' } },
            { regex: "}", action: { token: 'delimiter.bracket', next: '@pop' } },
            { include: 'expression' }
        ],
        comment: [
            { regex: "[^\\*]+", action: { token: 'comment' } },
            { regex: "\\*\\/", action: { token: 'comment', next: '@pop' } },
            { regex: "[\\/*]", action: { token: 'comment' } }
        ],
        whitespace: [
            { regex: nonCommentWs },
            { regex: "\\/\\*", action: { token: 'comment', next: '@comment' } },
            { regex: "\\/\\/.*$", action: { token: 'comment' } }
        ],
        expression: [
            { regex: "'''", action: { token: 'string.quote', next: '@stringVerbatim' } },
            { regex: "'", action: { token: 'string.quote', next: '@stringLiteral' } },
            { regex: numericLiteral, action: { token: 'number' } },
            {
                regex: identifier,
                action: {
                    cases: {
                        '@keywords': { token: 'keyword' },
                        '@namedLiterals': { token: 'keyword' },
                        '@default': { token: 'identifier' }
                    }
                }
            }
        ]
    }
};


/***/ })

}]);